const RANGE_INDICATOR_WIDTH = 16
const LIQUIDITY_CHART_HEIGHT = 200
const LIQUIDITY_CHART_PADDING = 14

// Chart Dimension Constants
export const CHART_DIMENSIONS = {
  // Chart dimensions
  LIQUIDITY_CHART_HEIGHT,
  LIQUIDITY_CHART_WIDTH: 120,
  TIMESCALE_HEIGHT: 20,
  RANGE_INDICATOR_WIDTH,
  LIQUIDITY_SECTION_OFFSET: RANGE_INDICATOR_WIDTH + 1,
  LIQUIDITY_BARS_SPACING: 10,
  LIQUIDITY_BAR_HEIGHT: 3,
  LIQUIDITY_BAR_SPACING: 1,
  SOLID_MIN_MAX_LINE_HEIGHT: 3,
  RANGE_INDICATOR_MIN_HEIGHT: 40,
  TRANSPARENT_MIN_MAX_LINE_HEIGHT: 30,
  PRICE_DOT_RADIUS: 4,
  // Chart total height used for loading state
  LIQUIDITY_CHART_TOTAL_HEIGHT: LIQUIDITY_CHART_HEIGHT + LIQUIDITY_CHART_PADDING,

  // Interactive element sizes
  DRAG_BOUNDARY_MARGIN: 10,
} as const

// Chart behavior constants
export const CHART_BEHAVIOR = {
  // zoom
  ZOOM_MIN: 0.01, // fallback, overridden by calculateDynamicZoomMin
  ZOOM_MAX: 3,
  ZOOM_FACTOR: 1.3,

  // pinch
  PINCH_DELTA_SCALE: 0.02,
  PINCH_ZOOM_FACTOR_MIN: 0.5,
  PINCH_ZOOM_FACTOR_MAX: 2.0,

  // animation
  ANIMATION_DURATION: 400,
} as const
